package map;

import java.util.*;

public class MapDemo2 {
    public static void main(String[] args) {
        Map<String, Integer> map = new HashMap<>();
        map.put("语文", 98);
        map.put("数学", 97);
        map.put("英语", 96);
        map.put("物理", 95);
        map.put("化学", 98);
        /*
            Set keySet()
            将当前Map中所有的key以一个Set集合形式返回
         */
        Set<String> KeySet = map.keySet();
        for (String key : KeySet) {
            System.out.println("key;"+key);
        }
        /*
            Set entrySet()
            返回一个Set集合,集合中每一个元素是一个Entry实例
            Map.
         */
        Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
        for (Map.Entry<String, Integer> entry : entrySet) {
            String key = entry.getKey();
            Integer value = entry.getValue();
            System.out.println(key+":"+value);
        }

        /*
            Collection values()
            将当前Map中所有的value以一个集合形式返回
         */
        Collection<Integer> values = map.values();
        for (Integer value : values) {
            System.out.println("value:"+value);
        }
        //基于lambda表达式形式的循环遍历方式
        values.forEach(
                value -> System.out.println(value)
        );

    }
}
